package com.fa4j.system.login.service;

import com.fa4j.common.web.model.AppType;
import com.fa4j.common.web.model.ClientInfo;
import com.fa4j.system.login.model.LoginCmd;
import com.fa4j.system.login.model.LoginSession;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotNull;

public interface LoginService {

    /**
     * 登录
     *
     * @param appType 应用类型
     * @param cmd     登录参数
     * @return 登录会话
     */
    LoginSession doLogin(@NotNull AppType appType, @Valid LoginCmd cmd, ClientInfo clientInfo);

}
